In modern processors, typically one or more cores are provided, along with potentially other disparate circuitry such as dedicated processing units to perform various functions, generically referred to as accelerators. Oftentimes a processor is formed on one or more semiconductor die including one or more cores, one or more accelerators, internal cache memories, memory controller circuitry and so forth. In many instances, cores may execute from a virtual address space, where memory references are made using virtual addresses that are translated to physical addresses. Accelerators may execute from different address spaces. While such arrangement provides for suitable isolation, it creates complexities when code is to interact between such different address spaces.